home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 1996 April
/
CHIP 1996 aprilis (CD06).zip
/
CHIP_CD06.ISO
/
hypertxt.arj
/
92
/
ALAPOK4.CD
< prev
next >
Wrap
Text File
|
1995-09-17
|
16KB
|
272 lines
@V""Aki" mindig bent csücsül@N
@VAz operációs rendszer@N
Mint láttuk, a számítógép mûködését az operációs
rendszer vezérli. A felhasználó számára szinte fontosabb,
mint a hardver, tehát a gép maga; hiszen a gép elôtt ülô
ember nem a processzorral, a regiszterekkel, a memóriával
tart kapcsolatot, hanem az operációs rendszert, illetve az
általa felkínált érintkezési módot, kezelési felületet
(felhasználói csatoló, user interface) érzékeli
számítógépként, annak lehetôségeiben gondolkodik, azt
alkalmazza.
Ennek fényében némileg meglepô, hogy az operációs
rendszer nem található meg a memória stabil részében (ROM),
pontosabban szólva csak egy kis része van ide ""beégetve", a
nagyobb részt lemezrôl kell betöltenünk. A fejlesztôk ezzel
a megoldással a választás lehetôségét kívánták megteremteni
az adott hardvert többféle virtuális géppé varázsoló
operációs rendszer változatai között.
Az IBM PC számítógépek szinte abszolutisztikusan
uralkodó operációs rendszere a PC-DOS vagy MS-DOS (DOS =
Disk Operating System). Megszületésének érdekes a története:
amikor 1980-ban az IBM vezérkara úgy döntött, hogy beszáll a
személyi számítógépek piacába egy 16 bites géppel (amit
elsôsorban intelligens terminálnak szántak), a 8 bites gépek
szintén szabvánnyá lett operációs rendszerének, a CP/M-nek a
gyártóját, a Digital Research-öt kérte fel az új gép
alapszoftverének megalkotására. A CP/M 8086 horribilis árát
az IBM nem volt hajlandó megfizetni. Egy rövid ideig ott
állt a szinte teljesen kész (az IBM addigi stratégiájától
eltérôen külsô szállítók részegységeibôl összeszerelt),
piacon beharangozott hardver, szoftver nélkül.
Ekkor fordult az IBM a feljövôben lévô Microsoft céghez,
amely három hónap (!) alatt kifejlesztette a DOS-t. Rossz
nyelvek szerint a rohammunk a meg is látszik a DOS-on,
mindenesetre a Microsoft ezzel csinálta meg a legnagyobb
üzletét: eddig több mint 10 millió példányt adtak el az
MS-DOS különbözô változataiból. (MS-DOS a Microsoft által
forgalmazott termék márkajele, míg a PC-DOS nevet az IBM
használja. A két változat közötti különbség elsô
közelítésben elhanyagolható.)
A fejlesztések idôrendje: 1981-ben megjelenik az IBM PC
és a DOS 1.0, amely összesen 25 parancsot tartalmaz, csak
floppyval lehet benne dolgozni. 1983-ban dobja piacra az IBM
az XT-t, ehhez megjelent a DOS 2.0, amely már támogatja a
merevlemez használatát, a könyvtárszerkezet kezelését --
természetesen új utasítások révén. 1984 az AT megjelenésének
éve, s új DOS is születik, a 3.0, majd hamarosan (hibák
miatt) a 3.1 és a 3.2. Fontos új parancsok jelennek itt meg
(PATH, XCOPY). 1987: új gépcsalád jelenik meg, a PS/2, s itt
a DOS 3.3, amely már képes 3 1/2 colos, 1,44 Mbyte-os
floppymeghajtók kezelésére. A Microsoft 1988-ban kiadja a
DOS 4.0-t, majd a 4.01-t. Ezekben a 32 Mbyte-nál nagyobb
merevlemezek is egy darabban kezelhetôk, s a felhasználók
menüvel is használhatják a DOS-t. Ennek ellenére nem terjed
el, az alkalmazók kitartanak a jól bevált, üzembiztos DOS
3.3-nál.
1991: elôbb kósza hírek terjednek a DOS 5.0-ról, majd
itt-ott feltûnik a program tesztváltozata, teljesen új
köntösben, szolgáltatásokkal, s az év második felében itt a
DOS 5.0, mint piaci termék. A DOS egy (több?!) évtizedes
egyeduralkodása azért is érdekes, mert idôközben a
számítógépek az állandó fejlesztések következtében kinôtték
a DOS babaruháját. Ez a kis, egyedi számítógépek számára
készített, géphez kötött (IBM PC), egy felhasználós -- egy
feladatos (single user -- single tasking), nem is
felhasználóbarát operációs rendszer igazán komplex feladatok
megoldására alkalmatlan. Nem véletlen, hogy a Microsoft
kifejlesztette az OS/2-t, amely alkalmas több feladat
párhuzamos végzésére (multitasking), támogatja a hálózati
munkát, s rendelkezik egy barátságos, grafikus felhasználói
felülettel (nem kell parancsokat irkálni, hanem ikonok
között válogathatunk az egérrel). S rendelkezésre áll a
Unix, egy teljesen hardver-független, többfelhasználós és
többfeladatos (multiuser/multitasking), egyértelmûen
professzionális rendszer is. A két utóbbi rendszer
terjedésének valószínû gátja, hogy igazán jól csak
pillanatnyilag meglehetôsen drága gépeken futnak.
Az operációs rendszerek az ellátandó feladatok
sokrétûsége miatt a legbonyolultabb szoftverek közé
tartoznak. Tekintsünk egy egyszerû (?) DOS példát:
készítsünk elô használatra egy új (az A: meghajtóban lévô)
lemezt, azaz formázzuk meg. (Ehhez a FORMAT A: parancsot
kell begépelnünk a billentyûzeten.)
1. Gépelés közben a billentyûzet folyamatosan küldi a
megnyomott gomboknak megfelelô kódokat a számítógép felé. E
kódokat az operációs rendszer elsôdleges be/kimeneti
egységekért felelôs része fogadja, s a kód másolatát
továbbítja a monitor felé, hogy lássuk gépelésünk hatását.
2. A parancs beírásának végén megnyomjuk az [Enter] gombot.
E kód hatására egy másik rész veszi át az ""uralmat", a
parancsértelmezô. Az értelmezô beolvassa az eddig átmeneti
helyen (""puffer"-ben) tárolt @KFORMAT A:@N karaktersorozatot, s
azt megpróbálja parancsként értelmezni, tehát végrehajtani.
Ez a parancs nem található a memóriában, tehát
3. az értelmezô a lemezmeghajtóhoz fordul, hogy keressen a
katalógusban egy FORMAT nevû állományt (Mellesleg: ehhez az
író/olvasó fejet a katalógust tartalmazó rész fölé kell
állítani, az adatokat el kell olvasni, közben a fej
folyamatosan mozog stb.). (A keresés biztos, hogy nem
sikerül, ha például FPRMAT-t írunk, ekkor hibaüzenetrôl kell
gondoskodni...). Ha megtalálta, akkor
4. az állományok kezeléséért felelôs rész a lemezmeghajtó
segítségével betölti a tárba a FORMAT nevû programot
(miközben helyet biztosított számára).
5. Az értelmezô átadja a helyét a behívott programnak, azaz
elindítja azt. Ekkor
6. a képernyômeghajtó révén megjelenik egy üzenet a
monitoron, hogy helyezzünk egy lemezt az A: meghajtóba, majd
nyomjuk meg az [Enter]-t.
7. A nyomás a billentyûzetról kód formájában bekerül az
átmeneti tárolóba, s ettôl kezdve
8. a lemezmeghajtó és a monitormeghajtó folyamatosan,
felváltva dolgozik. A lemezmeghajtó mozgatja a fejeket
sávról sávra, kiteszi mágneses útjelzôit, eközben a
képernyôn nyomon követhetjük, hol tart (melyik fej, melyik
cilinder). Ehhez természetesen az adatoknak a megfelelô
egységek között állandóan mozogniuk kell -- ez is egy a sok,
mellesleg ellátandó ""rutinfeladat" közül.
9. A folyamat végén egy üzenetet látunk a képernyôn
(képernyômeghajtó) a formázás megtörténtérôl.
10. Majd újabb üzenetet kapunk a lemez adatairól. Az
adatokat elsôdlegesen nyilván a lemezmeghajtó állapította
meg, de mivel számolni is kell, mûveletekre is szükség van,
az alapinformációkat továbbítani kell a processzornak, majd
a feldolgozás végén az adatcsomagot a processzor ""postázza"
a képernyômeghajtó felé. És még mindig nincs vége!
11. Egy kérdés jelenik meg a monitoron: akarunk-e másik
lemezt formázni? (Vajon hogyan került a képernyôre?) A
választ (melynek útja billentyûzet-> kód-> tároló-> stb.) a
program feldolgozza (közben meg is jeleníti), s ezzel vége.
Hát, nem semmi! Ezeket a feladatokat kell az operációs
rendszernek egy parancs végrehajtásakor ellátnia úgy, hogy a
felhasználót mentesítse a részletektôl. Mi kiadjuk a (mint
láttuk, meglehetôsen összetett hatású) parancsot, legfeljebb
válaszolunk egy-két kérdésre, a többi a DOS dolga.
Mint említettük, a DOS nincs beépítve a gépbe. Hogyan
tudunk akkor gépünkkel dolgozni? Tekintsük át a bekapcsolás
után lejátszódó folyamatokat.
Egy darabig még a ROM-ban található fix programoké
(BIOS) a vezérlés.
1. A gép leteszteli önmagát, fontosabb egységeit. A memória
tesztelése általában a képernyôn látható, követhetô. Ha
nincs probléma, (különben hibaüzenet jön)
2. a bootstrap (""csizmahúzó") programrész veszi át a
vezérlést. Feladata a DOS betöltése lemezrôl a memóriába.
(Szép magyar számítástechnikai kifejezéssel a ""bútolás").
Ez a program elôször az A: lemezmeghajtóval próbálkozik. E
ponton három lehetôség fordulhat elô: a. nincs lemez az
A:-ban, tehát irány a C: meghajtó (merevlemez) és lásd 3.
pontot;
b. van az A:-ban lemez, de nincs rajta a DOS. Ekkor
hibaüzenetet kapunk, aminek a szövege BIOS-függô, de az
mindenféleképpen szerepel benne, hogy másik lemezzel
próbálkozzunk;
c. DOS-t tartalmazó lemez van az A: meghajtóban. Ekkor
3. megindulhat a betöltés folyamata. Elsô lépésben a lemez
elejérôl beolvasódik a DOS saját betöltô rutinja (boot
record), ami aztán gondoskodik a DOS többi részének a tárba
juttatásáról. De nem az egésznek! A fejlesztôk úgy
döntöttek, hogy a gépek korlátozott lehetôségei miatt két
részre osztják az operációs rendszert: egy ""mag"-ra, amely
mindig a memóriában kell, hogy legyen, s értelemszerûen a
legfontosabb, leggyakrabban szükséges feladatokat oldja meg;
és egy ""külsô" parancsokból álló programgyûjteményre,
amelynek a programjaira ritkábban van szükség. E megoldás
egyértelmûen a tárral való takarékoskodást szolgálja, hiszen
így sokkal nagyobb memória marad a felhasználó saját
munkája, programjai számára.
4. A betöltés után a DOS elôször a CONFIG.SYS állományt
keresi. Ha talál ilyen file-t, akkor a benne szereplô
adatoknak megfelelôen beállítja (konfigurálja) a rendszert.
(Ha nincs CONFIG.SYS, akkor az alapbeállítások hajtódnak
végre).
5. E lépést az AUTOEXEC.BAT (automatikusan végrehajtódó)
file keresése követi. Létezése esetén a benne felsorolt
parancsokat hajtja v égre a gép, s utána áll készen a
munkára. Ha nincs a lemezen AUTOEXEC.BAT file, akkor a DOS
megkérdezi a dátumot és az idôt (mindkettôt célszerû
pontosan beírni, így követhetô munkánk idôrendje), majd
kezdôdhet a munka. Ha megnézünk egy -- például 1,2 Mbyte-os
-- DOS (boot) lemezt a DIR A: paranccsal (e parancs hatására
megjelenik a képernyôn a lemez tartalomjegyzéke), akkor a
következô rejtvénnyel találjuk szemben magunkat. Több minden
mellett az alábbiakat írja ki gépünk:
COMMAND COM 25{{276 7-24-87 12:00a
1 File(s) 1135616 bytes free (Egy kicsi, ámde szükséges
kitérô: COMMAND a lemezen lévô file neve, COM a
kiterjesztése. A mérete 25276 byte, mögötte pedig
""születésnapja", sôt órája, perce látható.) A rejtvény
pedig a következô: 1,2 Mbyte = 1228800 byte. Ha ebbôl
elvesszük a COMMAND.COM (a DOS parancsfeldolgozója) által
lefoglalt 25276 byte-ot, nem 1135616 marad! Hiányzik úgy 60
ezer byte-unk! A jelenség magyarázata: a DOS magjának a
COMMAND.COM-n kívüli, további két része a lemezen
úgynevezett rejtett file-ként van jelen. E két file az
IO.SYS, illetve az MSDOS.SYS (PC-DOS esetén IBMBIO.COM,
IBMDOS.COM), ôk felelnek a hardvereszközökkel való, illetve
a felhasználóval való kapcsolatért. További 10 ezer byte-ot
pedig a DOS lemez- adminisztrációja foglal el.
Mielôtt rátérnénk a DOS használatára, meg kell ismerkednünk
még néhány alapvetô fogalommal. A merevlemezek
megjelenésével a tárolókapacitás ugrásszerûen megnôtt, így
egy lemezen állományok százait, ezreit lehet tárolni. Ha
ebbe nem vinnénk valamiféle rendszert, akkor a lemezek
kezelhetetlenekké válnának. E probléma megoldására
alakították ki a hierarchikus, úgynevezett fa struktúrájú
tartalomjegyzéket, avagy könyvtárakat. Mint az ábrán
látható, a gyökérkönyvtárból (root directory) ágaznak ki a
további könyvtárak, alkönyvtárak. Egy alkönyvtárba
valamilyen szempontból összetartozó állományokat cé zerû
tárolni. (E gépkategóriában általában már nem programokról,
hanem programrendszerekrôl beszélünk, amelyek maguk is több
állományból állnak.)
Tehát az állományok, file-ok valamelyik könyvtárban
találhatók. Azonosításuk a nevükkel történik, de e név két
részbôl áll, magából a névbôl (maximum 8 karakter) és a
kiterjesztésbôl (legfeljebb 3 karakter). A két összetevôt
ponttal elválasztva kell leírnunk. Például:@K HAHO.BAS@N A
kiterjesztések információt adnak a felhasználónak, ugyanis a
programok többsége ""szabványos" kiterjesztéseket használ,
például:
.bas = BASIC nyelvû program
.pas = Pascal nyelvû program
.dbf = dBase által létrehozott adatállomány
.wk1 = Quattro nevû táblázatkezelô táblázata
.pic = ábrát tartalmazó állomány
.hlp = segítséget (help) tartalmazó állomány stb.
Három kiterjesztés különösen fontos a DOS szempontjából:
a .COM, az .EXE, és a .BAT. Az ilyen kiterjesztésû
állományokat (igazából programokat) a nevük egyszerû
beírásával el tudjuk indítani! Tehát, ha például a TETRIS
nevû könyvtárban találunk egy BL.EXE nevû file-t, akkor csak
annyit beírva, hogy BL [Enter] , máris elindult a népszerû
potyog tatós játék. A DOS parancsok mindig egy adott
lemezmeghajtóra és egy adott könyvtárra vonatkoznak, azon
belül hatnak. Az aktuális meghajtó jele mindig látható a
képernyôn (az A, B, C stb. betûk mögé kell beírnunk a
parancsokat), az aktuális könyvtár nevének megjelenítésérôl
nekünk kell gondoskodnunk (majd meglátjuk, hogyan tehetjük
ezt meg). Az ""aktualitás" azt jelenti, hogy a dBase
könyvtárban ""tartózkodva" hiába írjuk be, hogy BL, nem
indul el az elôbbi játék, hiszen egy másik könyvtár része.
Emiatt az állományok teljes nevének része az elérési
útvonaluk (path), amelyben fel kell sorolnunk azt a
könyvtári hierarchiát, amelynek ""mélyén" az adott file
található. Például:
C:\EDITORS\WORDSTAR\WS.EXE
(Figyeljünk az elválasztójelre: NEM törtvonal, hanem az
úgynevezett backslash!) Ha az állományok nevét nem tudjuk
biztosan, vagy nem akarjuk leírni, akkor használhatjuk a
helyettesítô (Jolly-Joker) karaktereket: a '*' és '?'
jeleket. A '*' egyszerre több karaktert is képes
helyettesíteni, míg a '?' csak az adott helyen pótol egy
tetszôleges karaktert. Például a
DIR *.EXE
parancs kiírja az aktuális lemez aktuális könyvtárában
lévô összes .EXE kiterjesztésû file nevét.
@KBánhegyesi Zoltán@N
C:\
├───DOS
├───PROGRAM
├───ADAT
└───JATEK
├───SAKK
├───KARTYA
├───FOCI
└───REPULO